package modelo;

import java.util.ArrayList;
import java.util.List;

import comunicacion.IObservable;
import comunicacion.IObservador;

public abstract class Observable implements IObservable {

	private List<IObservador> observadores = new ArrayList<IObservador>();

	public boolean asociar(IObservador observador) {

		return observadores.add(observador);
	}

	public boolean desasociar(IObservador observador) {

		return observadores.remove(observador);

	}

	@Override
	public void notificar() {

		for (int i = 0; i < observadores.size(); i++) {

			observadores.get(i).actualizar();

		}

	};

}
